Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Створення WIN32-програм з розділеними
паралельно у часі математичними обчисленнями
Інструкція до лабораторної роботи № 1
з курсу “Комп’ютерні методи дослідження систем керування”
для студентів базового напрямку 6.0914
“Комп’ютеризовані системи, автоматика і управління”
Затверджено
на засiданнi кафедри
“Комп’ютеризовані
системи автоматики»
Протокол № від . .2007
Львів 2007
Створення WIN32-програм з розділеними паралельно у часі математичними обчисленнями: Інструкція до лабораторної роботи № 1 з курсу “Комп’ютерні методи дослідження систем керування” для студентів базового напрямку 6.0914 “Комп’ютеризовані системи, автоматика і управління” / Укл.: У.Ю. Дзелендзяк, А.Г. Павельчак, В.В. Самотий – Львів: НУЛП, 2007.- 32 с.
Укладачі: У.Ю. Дзелендзяк, к.т.н., доцент
А.Г. Павельчак, асистент
В.В. Самотий, д.т.н., професор
Відповідальний за випуск
А.Й. Наконечний, д.т.н., професор
Рецензент: , д.т.н., професор
Мета роботи: отримати навики роботи у системі візуального об’єктно-орієнтованого програмування C++Builder та освоїти розроблення програм орієнтованих на виконання складних математичних розрахунків з розділенням їх виконання паралельно у часі.
1. Вступ
Розроблення алгоритмічних програм, призначених для вирішення певних складних математичних задач, вимагає від дослідника знання однієї з алгоритмічних мов, наприклад мови С++. Вивчити команди мови С++ та навчитися писати нею невеликі програми, наприклад обчислення суми двох чисел, можна достатньо швидко. Однак сама мова не містить засобів для організації взаємодії із користувачем. Більш того, у С++ немає ніяких засобів для створення вікон та елементів операційної системи Windows, хоча б тому, що й створювалася ця мова, коли Windows ще не було. Засоби, необхідні для організації простого користувацького інтерфейсу за допомогою С++, є виділені в окремі спеціальні бібліотеки, які містять багато найрізноманітніших функцій. Тому програмування вручну звичних для користувача вікон, кнопок, меню, обробки подій миші та клавіатури, відображення в програмі різних зображень вимагає від програміста великих затрат часу, а сам сервіс може займати до 90% від об’єму програмного коду.
Для спрощення написання програм з графічним інтерфейсом користувача (GUI – graphical user interface) було здійснено декілька підходів. Перший з них – стандартизація системних функцій та поява користувацького інтерфейсу Windows API (Application Programming Interface). WIN32 API – це набір функцій, структур, повідомлень, макросів та інтерфейсів, за допомогою яких можна створювати програми для будь-якої WIN32-платформи. Оскільки WIN32 API це набір С-функцій, то їх можна використовувати у своїй програмі, просто включивши у програмний код відповідний заголовний файл. Але навіть при використанні WIN32 API програмний код є достатньо громіздким, і для недосвідченого програміста це завдання є складним, і може зайняти більше часу, аніж поставлена перед ним математична задача. У 1992 році компанія Microsoft розробила об’єктно-орієнтовану інтерфейс-оболонку для Windows API у вигляді програмного продукту Application Frameworks (AFX), який у подальшому розвинувся у пакет Microsoft Foundation Classes (MFC). Класи MFC, що інкапсулюють основні фукнції WIN32 API, хоч і спрощують та прискорюють розробку Windows-програм, але на сьогодні вони вже вважаються застарілою технологією. Основним їх недоліком вважають відсутність підтримки компонентів, властивостей та подій.
Другим підходом до полегшення життя програмістам вважається поява візуального програмування на основі форм та компонентів, що виникло у Visual Basic. Спершу ця ініціатива швидко перехопилася фірмою Borland та розвинулася у програмному пакеті Delphi (що використовує компілятор Object Pascal), а згодом і у пакеті C++Builder (на основі компілятора С++). З 2000 року фірма Microsoft сп...